package com.adcc.loadsheet.billing.mapper.mysql;

import com.adcc.loadsheet.billing.entity.ScUpDataEntity;
import com.adcc.loadsheet.billing.entity.contractuser.ContractUserEntity;
import com.adcc.loadsheet.billing.entity.export.BillingStatistics;
import com.adcc.loadsheet.billing.vo.chargedetail.ChargeDetailVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 舱单Mapper
 * Created by zhaoml on 2020-04-27.
 */
@Mapper
public interface ScUpDataEntityMapper {

    //计费明细（舱单数据服务航班数、旅客名单服务航班数、当月重发航班数）
    ChargeDetailVO getChargeDetailNum(@Param("startDate")String startDate, @Param("endDate")String endDate, @Param("contractUserId")Integer contractUserId);

    //计费明细（舱单数据服务航班数、旅客名单服务航班数、当月重发航班数）
    List<ChargeDetailVO> getALLChargeDetailNum(@Param("startDate")String startDate, @Param("endDate")String endDate, @Param("contractUserId")Integer contractUserId);

    //统计航司
    List<ScUpDataEntity> statisticalAirline(@Param("startDate")String startDate,@Param("endDate") String endDate,@Param("contractUserId")Integer contractUserId);

    //统计机场
    List<ScUpDataEntity> statisticalAirport(@Param("startDate")String startDate,@Param("endDate") String endDate,@Param("contractUserId")Integer contractUserId);

    //明细
    List<ScUpDataEntity> details(@Param("startDate")String startDate,@Param("endDate") String endDate,@Param("contractUserId")Integer contractUserId);

    //计费统计
    List<BillingStatistics> statistics(@Param("startDate")String startDate,@Param("endDate") String endDate,@Param("contractUserList")List<ContractUserEntity> contractUserList);
}